The present invention relates to multiprocessor computer technology, and more particularly, to a sync and flush circuit within a multiprocessor computer for synchronizing the clocks of a processor, with respect to a control circuit, and for flushing modified data from the cache of the processor to a main store prior to utilizing the modified data in the execution of an instruction by another processor.
In a multiprocessor computer system, when one processor attempts to locate desired data in its own cache, and fails to locate such data, it is necessary to attempt to locate the data in the cache of the other processor. If the data is not found in the cache of the other processor, it is necessary to retrieve the data from a main store. Occasionally, the data is found in the cache of the other processor. The one processor must utilize the desired data in the execution of an instruction. For some instructions, the one processor may retrieve the data directly from the cache of the other processor, store the data in its own cache, and utilize the data in the execution of the instruction.
However, for other instructions, the one processor cannot retrieve the data directly from the cache of the other processor. It is therefore necessary to flush the desired data from the cache of the other processor to the main store, and utilize the desired data in the main store during the execution of the instruction.
The clocks of the one processor run independently of the clocks of the other processor. As a result, the clock of the one processor may be out-of-sync with respect to the clock of the other processor and with respect to the clock of a main store control circuit. Therefore, when it is necessary for the one processor to execute instructions on the other processor's data, prior to flushing the desired data from the other processor's cache to the main store, it is necessary to synchronize the clock of the other processor with the clock of the main store control circuit. When these clocks are synchronized, the flush operation may commence.